<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Concurrent Versions System</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Concurrent_Versions_System"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Concurrent_Versions_System rootpage-Concurrent_Versions_System skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Concurrent Versions System</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><table class="float-right infobox toccolours toptextcells" style="border-spacing:5px; font-size:90%; text-align:left; width:21em;">
<tbody><tr>
<th colspan="2" class="hintergrundfarbe6" style="font-size:105%; text-align:center;">Concurrent Versions System
</th></tr>
<tr>
<th colspan="2" class="hintergrundfarbe5" style="font-size:105%; text-align:center;">Basisdaten
<p class="mw-empty-elt">
</p>
</th></tr>
<tr>
<td><b><a href="Maintainer" title="Maintainer">Hauptentwickler</a></b>
</td>
<td><a rel="nofollow" class="external text" href="https://savannah.nongnu.org/project/memberlist.php?detailed=1&group=cvs">CVS Team</a>
</td></tr>
<tr>
<td><b><a href="Softwareentwickler" title="Softwareentwickler">Entwickler</a></b>
</td>
<td><span class="wikidata-content">The CVS Team</span>
</td></tr>
<tr>
<td><b>Erscheinungsjahr</b>
</td>
<td><span class="wikidata-content">19. November 1990<sup id="cite_ref-_ad826588e1febdb6_1-0" class="reference"><a href="#cite_note-_ad826588e1febdb6-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></span>
</td></tr>
<tr>
<td><b>Aktuelle <a href="Version_(Software)" title="Version (Software)">Version</a></b>
</td>
<td><span class="wikidata-content">1.11.23<sup id="cite_ref-_c68ff57ca345dd3e_2-0" class="reference"><a href="#cite_note-_c68ff57ca345dd3e-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-_839ff90f4bb04bb4_3-0" class="reference"><a href="#cite_note-_839ff90f4bb04bb4-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></span> <br> (<span class="wikidata-content">8. Mai 2008</span>)
</td></tr>
<tr>
<td><b>Aktuelle Vorabversion</b>
</td>
<td><span class="wikidata-content">1.12.13<sup id="cite_ref-_f48d103a2bb0ede9_4-0" class="reference"><a href="#cite_note-_f48d103a2bb0ede9-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup></span> <br> (<span class="wikidata-content">28. September 2005</span>)
</td></tr>
<tr>
<td><b><a href="Betriebssystem" title="Betriebssystem">Betriebssystem</a></b>
</td>
<td><a href="Unix" title="Unix">Unix</a>, <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>
</td></tr>
<tr>
<td><b><a href="Programmiersprache" title="Programmiersprache">Programmiersprache</a></b>
</td>
<td><span class="wikidata-content"><a href="C_(Programmiersprache)" title="C (Programmiersprache)">C</a><sup id="cite_ref-_04776170360a6409_5-0" class="reference"><a href="#cite_note-_04776170360a6409-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup></span>
</td></tr>
<tr>
<td><b>Kategorie</b>
</td>
<td><a href="Versionsverwaltung" title="Versionsverwaltung">Versionsverwaltung</a>
</td></tr>
<tr>
<td><b>Lizenz</b>
</td>
<td><span class="wikidata-content">GNU General Public License, Version 1.0 oder später<sup id="cite_ref-_46837fe17c183298_6-0" class="reference"><a href="#cite_note-_46837fe17c183298-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup></span>
</td></tr>
<tr>
<td class="hintergrundfarbe5" colspan="2" style="text-align:center;"><a rel="nofollow" class="external text" href="https://savannah.nongnu.org/projects/cvs">savannah.nongnu.org/projects/cvs</a>
</td></tr></tbody></table>
<p><b>Concurrent Versions System</b> (<b>CVS</b>) ist ein <a href="Software" title="Software">Software</a>-System zur <a href="Versionsverwaltung" title="Versionsverwaltung">Versionsverwaltung</a> von Dateien, das hauptsächlich im Zusammenhang mit Software-<a href="Quelltext" title="Quelltext">Quelltext</a> verwendet wird.
</p><p>Die <a href="Referenzimplementierung" title="Referenzimplementierung">Referenzimplementierung</a> von CVS wird nicht mehr aktiv weiterentwickelt. Die offizielle Website der Software wird nicht mehr weiter betreut, allerdings sind weiterhin Benutzer auf den Mailinglisten aktiv.
</p>
<div class="mw-heading mw-heading2"><h2 id="Allgemeines">Allgemeines</h2></div>
<p>Das ursprüngliche CVS ist ein reines <a href="Kommandozeile" title="Kommandozeile">Kommandozeilen</a>-Programm, aber es wurde für alle gängigen Betriebssysteme mindestens eine <a href="Grafische_Benutzeroberfl%C3%A4che" title="Grafische Benutzeroberfläche">grafische Oberfläche</a> entwickelt, zum Beispiel <i>TortoiseCVS</i> und <i>WinCVS</i> für <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>, <i>MacCVS</i> für den <a href="Apple_Macintosh" class="mw-redirect" title="Apple Macintosh">Apple Macintosh</a> und <i>Cervisia</i> für <a href="KDE" title="KDE">KDE</a> unter <a href="Linux" title="Linux">Linux</a>. <i>LinCVS</i> und <i>SmartCVS</i> funktionieren auf <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>, Linux und <a href="MacOS" title="MacOS">macOS</a>.
</p><p>CVS erfreute sich lange Zeit besonders in der <a href="Open_Source" title="Open Source">Open-Source</a>-Gemeinde großer Beliebtheit. So kam es bei den meisten großen Open-Source-Projekten zum Einsatz. Das Softwaresystem wird unter anderem auch auf den Servern von <a href="SourceForge" title="SourceForge">SourceForge</a>.net verwendet. Allerdings wurde es bei den meisten großen Open-Source-Projekten durch modernere <a href="Versionsverwaltung" title="Versionsverwaltung">Versionsverwaltungen</a> wie <a href="Apache_Subversion" title="Apache Subversion">(Apache) Subversion</a> oder <a href="Git" title="Git">Git</a> abgelöst. Auch im kommerziellen Umfeld ist auf Grund der nicht mehr gegebenen aktiven Weiterentwicklung eine Ablösung durch modernere Versionsverwaltungen zu beobachten. Hier wird vor allem Subversion eingesetzt, da dieses als logischer Nachfolger von CVS mit nur geringem Umstellungsaufwand verstanden wird.
</p>
<div class="mw-heading mw-heading2"><h2 id="Funktionsweise">Funktionsweise</h2></div>
<p>CVS vereinfacht die Verwaltung von Quellcode dadurch, dass es alle Dateien eines Software-Projektes an einer zentralen Stelle, einem sogenannten <a href="Repository" title="Repository">Repository</a>, speichert. Dabei können jederzeit einzelne Dateien verändert werden, es bleiben jedoch alle früheren Versionen erhalten, einsehbar und wiederherstellbar. Auch können die Unterschiede zwischen bestimmten Versionen herausgestellt werden. So hilft CVS dabei, einen Überblick über die einzelnen Versionen der Dateien und die dazugehörigen Kommentare zu behalten. Es kann insbesondere verwendet werden, um bei größeren Projekten die Arbeit der verschiedenen Entwickler zu koordinieren.
</p><p>Die Arbeitsweise ist dabei, vereinfacht gesehen, folgende: Ein Mitarbeiter an dem Projekt holt sich zunächst den aktuellen Stand aller Dateien eines Projekts aus dem Repository. Dies bezeichnet man als „auschecken“ (von engl. <i>check out</i>). Dabei werden von CVS <a href="Metadaten" title="Metadaten">Metadaten</a> angelegt, die es ermöglichen, zu erkennen, welche Versionen der Dateien zuletzt ausgecheckt wurden.
Dann nimmt der Mitarbeiter Änderungen an einer oder mehreren Dateien vor. Wenn er damit fertig ist oder (bei größeren Änderungen) einen konsistenten Zwischenstand erreicht hat, spielt er diese neuen Versionen der geänderten Dateien zurück ins Repository, „einchecken“ genannt (<i>von engl. check in</i>). Probleme können sich ergeben, wenn mehrere Mitarbeiter gleichzeitig eine Datei verändern. Diese Probleme können entweder von vornherein verhindert (durch <a href="Lock" title="Lock">Lock</a>, bei <a href="Revision_Control_System" title="Revision Control System">Revision Control System</a> verwendet, bei CVS untypisch) oder im Nachhinein meist relativ leicht behoben werden (<a href="Merge" title="Merge">Merge</a>), zumindest dann, wenn unterschiedliche Teile einer Datei verändert wurden. Evtl. auftretende Konflikte müssen manuell ausgeräumt werden. Wer nur Code herunterladen will, kann alternativ auch das Feature „Anonymous CVS Access“ benutzen.
</p><p>CVS verwendet <a href="Delta-Kodierung" title="Delta-Kodierung">Delta-Kodierung</a>, um dadurch Platz zu sparen, dass nur die Differenzen zwischen Dateiversionen anstatt der gesamten Versionen abgespeichert werden.
</p><p>Das <a href="Repository" title="Repository">Repository</a> kann lokal in einem Verzeichnis auf dem Rechner liegen oder aber auf einem Server im Internet. Durch diesen Fernzugriff ist es leicht möglich, dass eine über den Globus verteilte Entwicklergruppe gemeinsam an einem Projekt arbeitet. Auf viele <a href="Open_Source" title="Open Source">Open-Source</a>-Projekte ist neben dem Entwicklerzugriff auch ein anonymer, rein lesender Zugriff erlaubt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Herkunft_und_Ableger">Herkunft und Ableger</h2></div>
<p>Die Entwicklung von CVS begann 1989 als Weiterentwicklung von <a href="Revision_Control_System" title="Revision Control System">RCS (Revision Control System)</a> und <a href="Source_Code_Control_System" title="Source Code Control System">SCCS (Source Code Control System)</a>. Im Unterschied zu diesen ist CVS in der Lage, mehrere Dateien zur gleichen Zeit zu speichern, wobei aber das gleiche Dateiformat wie bei RCS benutzt wird. CVS hat allerdings auch einige Einschränkungen, zum Beispiel beim Umgang mit <a href="Bin%C3%A4rformat" class="mw-redirect" title="Binärformat">Binärdaten</a> und <a href="Verzeichnis" title="Verzeichnis">Verzeichnissen</a>. Das als CVS-Nachfolger gehandelte, neu entwickelte <a href="Apache_Subversion" title="Apache Subversion">(Apache) Subversion</a> will diese beheben.
</p><p>Neben dem teilweise auch konzeptionell anders angelegten Subversion, gibt es verschiedene Neu- oder Reimplementierungen von CVS, die Sicherheitsmängel beheben und mit anderen Verbesserungen aufwarten. So existiert etwa eine Neuentwicklung von CVS mit dem Namen CVSNT für Windows, welche bereits für Linux rückportiert wurde. Dieses Server-System bietet ähnlich wie Subversion viele Verbesserungen gegenüber der alten CVS-Entwicklungslinie.
</p><p>Mit OpenCVS hat das <a href="OpenBSD" title="OpenBSD">OpenBSD</a>-Projekt ein eigenes CVS von Grund auf entwickelt. Die Motivation dahinter waren einerseits Lizenz-, andererseits Sicherheitsprobleme mit dem offiziellen CVS. OpenCVS erfährt bis heute Updates und Wartung.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> Auch wurde OpenCVS im Funktionsumfang leicht erweitert. So ist es unter anderem Möglich mittels eines <code>$Mdocdate$</code> Schlüsselwortes den Inhalt durch ein mdoc formatierten Zeitstempel zu ersetzen, was gerade in der Wartung von <a href="Manpage" title="Manpage">man-pages</a> hilfreich ist.
</p><p>Viele der kommerziellen <i>Configuration-Management</i>-Werkzeuge basieren auf RCS oder CVS.
</p>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Git" title="Git">Git</a></li>
<li><a href="Apache_Subversion" title="Apache Subversion">Apache Subversion</a></li>
<li><a href="Mercurial" title="Mercurial">Mercurial</a></li>
<li><a href="Bazaar" title="Bazaar">Bazaar</a></li>
<li><a href="GNU_arch" title="GNU arch">GNU arch</a></li>
<li><a href="Fossil_(Software)" title="Fossil (Software)">Fossil</a></li>
<li><a href="Darcs" title="Darcs">Darcs</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Literatur">Literatur</h2></div>
<ul><li>Karl Franz Fogel, Moshe Bar: <i>Open Source Development with CVS.</i> 3. Auflage. Paraglyph Press, Juli 2003, ISBN 1-932111-81-6 (<a rel="nofollow" class="external text" href="http://cvsbook.red-bean.com/">online lesen</a>)</li>
<li>Gregor N. Purdy: <i>CVS Pocket Reference.</i> 2. Auflage. O’Reilly, 1. September 2003, ISBN 0-596-00567-9</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://cvsbook.red-bean.com/">Open Source Development with CVS, 3rd Edition (Onlinebuch)</a></li>
<li><a rel="nofollow" class="external text" href="https://savannah.nongnu.org/projects/cvs">Offizielle CVS-Website</a> (englisch)</li>
<li><a rel="nofollow" class="external text" href="https://curlie.org/World/Deutsch/Computer/Programmieren/Werkzeuge/Versionskontrolle/">Linkkatalog zum Thema Versionskontrolle</a> bei <i>curlie.org</i> (ehemals <a href="DMOZ" title="DMOZ">DMOZ</a>)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-_ad826588e1febdb6-1"><span class="mw-cite-backlink"><a href="#cite_ref-_ad826588e1febdb6_1-0">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://cvs.savannah.gnu.org/viewvc/cvs/ccvs/NEWS?view=markup&revision=1.1#l795"><cite style="font-style:italic">cvs.savannah.gnu.org</cite>.</a></span>
</li>
<li id="cite_note-_c68ff57ca345dd3e-2"><span class="mw-cite-backlink"><a href="#cite_ref-_c68ff57ca345dd3e_2-0">↑</a></span> <span class="reference-text">Derek Robert Price: <a rel="nofollow" class="external text" href="https://savannah.nongnu.org/forum/forum.php?forum_id=5309"><cite class="lang" lang="en" dir="auto" style="font-style:italic"><span lang="en">Concurrent Versions System - News Stable CVS Version 1.11.23 Released!</span></cite></a> 8. Mai 2008 (englisch, abgerufen am 10. Februar 2021).</span>
</li>
<li id="cite_note-_839ff90f4bb04bb4-3"><span class="mw-cite-backlink"><a href="#cite_ref-_839ff90f4bb04bb4_3-0">↑</a></span> <span class="reference-text">Derek Price: <a rel="nofollow" class="external text" href="https://lists.nongnu.org/archive/html/cvs-announce/2008-05/msg00000.html"><cite class="lang" lang="en" dir="auto" style="font-style:italic"><span lang="en">Stable CVS Version 1.11.23 Released!</span></cite></a> 8. Mai 2008 (englisch, abgerufen am 10. Februar 2021).</span>
</li>
<li id="cite_note-_f48d103a2bb0ede9-4"><span class="mw-cite-backlink"><a href="#cite_ref-_f48d103a2bb0ede9_4-0">↑</a></span> <span class="reference-text">Derek Robert Price: <a rel="nofollow" class="external text" href="https://savannah.nongnu.org/forum/forum.php?forum_id=4046"><cite class="lang" lang="en" dir="auto" style="font-style:italic"><span lang="en">Concurrent Versions System - News CVS Feature Version 1.12.13 Released!</span></cite></a> 28. September 2005 (englisch, abgerufen am 10. Februar 2021).</span>
</li>
<li id="cite_note-_04776170360a6409-5"><span class="mw-cite-backlink"><a href="#cite_ref-_04776170360a6409_5-0">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.openhub.net/p/cvs/analyses/latest/languages_summary"><cite style="font-style:italic"><span lang="en">The cvs Open Source Project on Open Hub: Languages Page</span></cite>.</a> In: <cite style="font-style:italic">Open Hub</cite>. (abgerufen am 19. Oktober 2018).</span>
</li>
<li id="cite_note-_46837fe17c183298-6"><span class="mw-cite-backlink"><a href="#cite_ref-_46837fe17c183298_6-0">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://cvs.savannah.nongnu.org/viewvc/cvs/ccvs/README?view=markup"><cite style="font-style:italic">cvs.savannah.nongnu.org</cite>.</a> (abgerufen am 20. Januar 2022).</span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="http://cvsweb.openbsd.org/src/usr.bin/cvs/"><i>src/usr.bin/cvs/.</i></a><span class="Abrufdatum"> Abgerufen am 12. Juni 2021</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AConcurrent+Versions+System&rft.title=src%2Fusr.bin%2Fcvs%2F&rft.description=src%2Fusr.bin%2Fcvs%2F&rft.identifier=http%3A%2F%2Fcvsweb.openbsd.org%2Fsrc%2Fusr.bin%2Fcvs%2F"> </span></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://www.openbsd.org/opencvs/index.html"><i>OpenCVS.</i></a><span class="Abrufdatum"> Abgerufen am 12. Juni 2021</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AConcurrent+Versions+System&rft.title=OpenCVS&rft.description=OpenCVS&rft.identifier=https%3A%2F%2Fwww.openbsd.org%2Fopencvs%2Findex.html"> </span></span>
</li>
</ol>
<div class="hintergrundfarbe1 rahmenfarbe1 navigation-not-searchable normdaten-typ-s" style="border-style: solid; border-width: 1px; clear: left; margin-bottom:1em; margin-top:1em; padding: 0.25em; overflow: hidden; word-break: break-word; word-wrap: break-word;" id="normdaten">
<div style="display: table-cell; vertical-align: middle; width: 100%;">
<div>
Normdaten (Sachbegriff): <a href="Gemeinsame_Normdatei" title="Gemeinsame Normdatei">GND</a>: <span class="-print"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4597700-8">4597700-8</a></span> </div>
</div></div></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-07-29" href="https://de.wikipedia.org/wiki/?title=Concurrent_Versions_System&oldid=258395992">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>